import jakarta.servlet.*;          // 导入Servlet API相关包
import jakarta.servlet.http.*;     // 导入Servlet HTTP相关包
import jakarta.servlet.annotation.*; // 导入Servlet注解相关包

import java.io.IOException;        // 导入IO异常处理类
import java.io.PrintWriter;         // 导入打印输出流类

/**
 * 这是一个简单的Servlet类示例
 * 使用@WebServlet注解将此类注册为Servlet
 * name: Servlet01 - Servlet的名称
 * value: /Servlet01 - Servlet的访问URL路径
 */
@WebServlet(name = "Servlet01", value = "/Servlet01")
public class Servlet01 extends HttpServlet {  // 继承HttpServlet类以实现HTTP功能

    /**
     * 处理GET请求的方法
     * @param request HttpServletRequest对象，包含客户端请求信息
     * @param response HttpServletResponse对象，用于向客户端发送响应
     * @throws ServletException 可能抛出的Servlet异常
     * @throws IOException 可能抛出的IO异常
     */
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        this.doPost(request, response);  // 调用doGet方法处理POST请求
    }

    /**
     * 处理POST请求的方法
     * 在本例中，POST请求直接调用doGet方法处理
     * @param request HttpServletRequest对象，包含客户端请求信息
     * @param response HttpServletResponse对象，用于向客户端发送响应
     * @throws ServletException 可能抛出的Servlet异常
     * @throws IOException 可能抛出的IO异常
     */
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        //打印字符
//        PrintWriter out = response.getWriter();  // 获取响应输出流
//        String data="第一个servlet程序，来自黄艳贞";
//        out.println(data);  // 向客户端输出内容

        //打印字节
        ServletOutputStream outputStream = response.getOutputStream();
        String data2="第一个servlet程序，来自黄艳贞2";
        outputStream.write(data2.getBytes());

    }
}